As portable personal computers such as notebook type ones have spread, the requirement for small-sized, lightweight and low power consumption computer systems has increased. An external storage system or solid state file using solid state memory has a low power consumption and can operate at a high speed because, unlike a magnetic disk apparatus, it does not have a mechanical drive system. Further, since it is composed of small memory modules, it is small-sized, lightweight, and has a large degree of freedom with respect to shape as compared with the magnetic disk apparatus, and is also easily made in the form of a card.
However, a conventional solid state memory has many problems with respect to such points as cost, capacity and battery backup. If SRAM is used as the memory, the cost is high and hence the capacity becomes small though the backup time by a battery becomes long. For DRAM which is excellent in cost and capacity, the standby power consumption is large and the backup time is limited to one week or so. There is also a danger of data loss due to a problem in the battery system. EEPROM is costly though it requires no battery.
A flash memory has been developed as a memory to solve these problems. Its memory element is composed of one transistor as DRAM so that it can be packaged in high density, and it is expected to have a bit cost equivalent to or less than DRAM (low cost, large capacity), depending on the future market. The memory element is non-volatile and does not require the battery backup. Erasure is generally performed for each chip or for each smaller block. An outline of such flash memory is introduced by Richard D. Pashley et al in "Flash memories: the best of two worlds", IEEE SPECTRUM, December 1989, pp. 30-33. As far as performance is concerned, the block erase type is superior to the chip erase type.
When flash memory of the block erase type is used for a solid state file, it is convenient to memory management if the size of a block is made equal to a sector, which is a unit of access in the magnetic disk apparatus. European Patent Application 392895, for example, discloses a flash EEPROM system of sector erase type. The system makes it possible to simultaneously erase any plural sectors by providing a latch for each sector, which is a unit of erasing, and setting a latch corresponding to a sector to be erased. Also known is a flash memory whose unit of erasing is a block having a size equivalent to a plurality of sectors (e.g., 4K bytes). This is sometimes called a cluster erase type to distinguish from the sector erase type.
However, flash memory has limitations which SRAM and DRAM do not have. First, the programming of memory bits is a one-way process and change is allowed only from 0 to 1 or from 1 to 0. Therefore, when new data is to be written to a memory location which has already been written, writing should be performed after a block including that memory location is erased to all 0 or all 1 state. It usually takes several tens of milliseconds to several seconds for erasing and writing. Further, the flash memory deteriorates with erasing and writing and reaches a use limit, which at present is after several tens of thousands to several hundreds of thousands of erasing and writing cycles.